Method and apparatus for embedding motor error parameter data in a drive motor of a power driven wheelchair

ABSTRACT

A drive motor assembly for a power driven wheelchair comprises: a stator housing for containing field coils of a stator of the motor assembly; at least one sensor disposed in the stator housing for sensing rotation of the motor; a memory storing motor error parameter data including data of errors of the at least one sensor, the memory being embedded in the stator housing; and a connection for accessing the error parameter data of the memory from the stator housing. The motor error parameter data may be accessed from the embedded memory of the drive motor by a programmed motor controller for use in controlling the drive motor. Also, the motor error parameter data may be embedded in the drive motor by the steps of: controlling the motor through at least one predetermined drive pattern; sensing motor rotation during the drive pattern and generating signals representative thereof; deriving error parameter data of the drive motor from the generated signals; programming a memory with the derived error parameter data; and embedding the memory in the drive motor.

BACKGROUND OF THE INVENTION

The present invention is directed to the field of power drivenwheelchairs, in general, and more particularly, to a method andapparatus for embedding motor error parameter data in a drive motor of apower driven wheelchair.

Power driven wheelchairs which may be of the type manufactured byInvacare Corporation of Elyria, Ohio, for example, generally includeright and left side drive wheels driven by a motor controller viarespectively corresponding right and left side drive motors, all ofwhich being disposed on the wheelchair. An exemplary illustration ofsuch a motor drive arrangement is shown in the schematic of FIG. 1.Referring to FIG. 1, a motor drive controller 10 which may be anInvacare MK IV™ controller, for example, controls drive motors 12 and 14which are mechanically linked respectively to the right side and leftside drive wheels of the wheelchair. A user interface 16 which mayinclude a joystick 18 and selection switches (not shown) operable by auser is also disposed on the wheelchair in a convenient location to theuser. The user interface 16 is generally interfaced to the controller 10over a two wire serial coupling 20 to permit the user to select a driveprogram appropriate for operating the wheelchair in its environment andto adjust the direction and speed of the wheelchair within the selecteddrive program. The controller 10 may be programmed with a plurality ofdrive programs, each suited for a particular operating environment.

The motor controller 10 is generally powered by a battery source 22,which may be 24 volts, for example, also disposed on the wheelchair. Thedrive motors 12 and 14 may be of the permanent magnet type like agearless, brushless AC motor, for example. The controller 10 may includea microcontroller interfaced and responsive to the user interface 16 tocontrol drive signals 24 and 26 to motors 12 and 14, respectively, via apower switching arrangement configured in accordance with the motor typebeing driven. The power switching arrangement may be powered by the 24Vbattery 22. Thus, as the user adjusts the speed and direction of thewheelchair via the joystick of interface 16, appropriate drive signals24 and 26 are controlled by controller 10 to drive the motors 12 and 14accordingly. Controller 10 generally controls motor speed to the usersetting in a closed loop manner.

Actual speed of each motor 12 and 14 is derived from signals 28 and 30respectively sensed therefrom. For example, for AC drive motors, a HallEffect sensor combination may be disposed at the motor for sensing andgenerating signals 28 and 30 representative of angular position whichare read by the controller 10. The controller 10 may derive motor speedfrom the sensor signals 28 and 30 based on a change in angular position,and use the derived motor speed as the actual speed feedback signal forthe closed loop speed control of the motor.

For safety purposes, it is preferred that the motors of the wheelchairdrive the corresponding wheels of the wheel chair in a smooth fashion.To achieve this smooth motor drive, the rotor and stator of the motorshould be manufactured to precise tolerances. In other words, thereshould be a precise relationship between the magnets positioneduniformly around the rotor assembly and the field coils (normally3-phase) disposed about the stator assembly so that when the magneticfields of the stator are energized and caused to rotate in phase, theyforce the magnets of the rotor to follow in a smooth and uniform manner,i.e. without jerky or interrupted movement. However, mounting of therotor and stator components in a precise orientation to each other maynot always be accomplished. While the motor components may be withintheir desired manufacturing tolerance, the orientation of such motorcomponents during assembly of one motor to another may not be of theexact same dimensions which leads to variability of componentorientation.

In addition, as noted above, closed loop motor speed control of thewheelchair utilizes a motor speed feedback signal generally derived froma set of sensors disposed within the motor assembly for providingsignals commensurate with the angular position of the rotor with respectto the stator. However, one set of sensors may measure angular positionof the motor slightly different from another set. Thus, the sensitivityof sensor measurements becomes a factor in driving the motor smoothly.Accordingly, each motor assembly will have its own set of errorparameters. To achieve the smooth motor drive in present poweredwheelchairs, the motor controller determines the error parameters ofeach motor assembly, generally through a calibration process, andautomatically compensates for these error parameters in a motor controlalgorithm of the controller 10.

To better understand the present calibration procedure, reference ismade to FIG. 1 and the block diagram schematic of an exemplary closedloop motor controller depicted in FIG. 2. Controller 10 may include amicrocontroller 40 (shown within dashed lines) including amicroprocessor programmed with operational algorithms for controllingthe AC GB drive motor 12, 14, and an analog-to-digital converter (A/D)42. The motor 12, 14 may be a three phase motor of the type in which thethree field coils thereof are wye connected as shown. Each field coil isdriven by a corresponding drive amplifier 44, 46 and 48 powered by thevoltage of battery 22. As noted above, the angular position of the rotormay be measured by two Hall Effect sensors 50 and 52 in conjunction witha ring magnet which generate in response to movement of the rotor nearsinusoidal signals which are 90° apart (i.e. sine and cosine signals)representative of the angular position of the rotor. The generatedsignals from sensors 50 and 52 are provided to inputs of the A/D 42 oversignal lines 54 and 56, respectively. The A/D 42 digitizes the sensorsignals at a sampling rate on the order of 100 Hz, for example.

The microprocessor of the microcontroller 40 is programmed with controlalgorithms functionally depicted in FIG. 2 by blocks. For example, block58 performs the function of receiving the digitized sensor signals andconverting them into an angular position and motor speed which isconveyed to a summation block 60. A speed demand signal may be input tothe controller from the user interface 16, for example, and applied toanother input of the summation block 60 which subtracts the motor speedsignal from the speed demand signal to arrive at an error signal ε. Amotor control algorithm 62 is governed by the speed error to cause eachof three pulse width modulator algorithms 64, 66, and 68 to generate apulsed width modulated signal to a corresponding amplifier 44, 46 and48, respectively. The amplifiers 44, 46 and 48 in turn generate voltagesignals V1, V2 and V3, respectively, which cause the corresponding fieldcoils of the drive motor 12, 14 to rotate a magnetic field in properphase about the stator to force the rotor to follow.

Currently, after the wheelchair is assembled during manufacture, theaforementioned motor error parameters are determined individually foreach drive motor of the wheelchair by the calibration process whichentails lifting the wheels of the wheelchair off the ground. Thecalibration procedure may be initiated through a remote programmer 70which may be electrically coupled to a port of the microcontroller 40 ofcontroller 10 via signal lines 72, for example. The calibrationprocedure may be menu selected via an interactive display 74 of theprogrammer 70 by operation of input pushbuttons 76 thereof. Onceselected, the programmer 70 sends a signal over lines 72 to themicrocontroller 40 to execute a calibration algorithm 80 programmedtherein.

During execution of the calibration algorithm 80, the summation block 60is functionally disconnected and the motor is automatically driven openloop via motor control algorithm 62 by an error signal 82 generated bythe algorithm 80 in accordance with predetermined drive patterns. Duringthe calibration procedure, a feedback speed signal 84 is monitored bythe calibration algorithm 80 to determine certain motor errorparameters, such as angular error in the orientation between the sensors50 and 52 (should be precisely 90°), the amplitude variation of eachsensor to the magnetic field, and the distortion parameter for eachsensor which is related to the deviation of the sensor signal from asine wave, for example.

Once the motor error parameters are determined for each motor 12 and 14of the wheelchair, data representative thereof are stored in anon-volatile memory 86, which may be an electrically erasableprogrammable read only memory (EEPROM), for example. Thereafter, eachtime the motor control algorithm 62 is executed, it uses the motor errorparameter data stored in the EEPROM 86 for a smooth control of the drivemotors 12 and 14. However, the stored motor error parameter data areunique to the present motors and sensors of the wheelchair, and theparticular assembly thereof. Thus, each time a service problem isencountered in the field involving replacement of a motor assembly unit,the calibration procedure has to be repeated which includes maintainingthe wheels of the wheelchair off the ground through use of blocks orother onerous techniques.

Understandably, having to repeat the calibration procedure in the fieldto re-determine the motor error parameters each time a motor assembly isreplaced is a very timely and costly operation which needs improvement.The present invention is intended to address the timeliness and cost ofthe current motor error parameter setting technique and provide a methodand apparatus which overcomes the drawbacks thereof.

SUMMARY OF THE INVENTION

In accordance with one aspect of the present invention, a drive motorassembly for a power driven wheelchair comprises: a stator housing forcontaining field coils of a stator of the motor assembly; at least onesensor disposed in the stator housing for sensing rotation of the motor;a memory storing motor error parameter data including data of errors ofthe at least one sensor, the memory being embedded in the statorhousing; and means for accessing the error parameter data of the memoryfrom the stator housing.

In accordance with another aspect of the present invention, apparatusfor accessing motor error parameter data from a drive motor of awheelchair comprises: a memory embedded in the drive motor, the memorystoring motor error parameter data; and a programmed motor controllerfor controlling the drive motor, the motor controller operative toaccess the motor error parameter data from the embedded memory for usein controlling the drive motor.

In accordance with yet another aspect of the present invention, a methodof embedding motor error parameter data in a drive motor of a wheelchaircomprises the steps of: controlling the motor through at least onepredetermined drive pattern; sensing motor rotation during the drivepattern and generating signals representative thereof; deriving errorparameter data of the drive motor from the generated signals; andprogramming a memory with the derived error parameter data; andembedding the memory in the drive motor.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustration of an exemplary motor drivearrangement of a power driven wheelchair.

FIG. 2 is a block diagram schematic of an exemplary closed loop motorcontroller for controlling a drive motor of a wheelchair.

FIG. 3 is a block diagram illustration of a drive motor attached to atest fixture for embedding motor error parameter data in the drive motorin accordance with one aspect of the present invention.

FIG. 4 is an illustration of an exemplary stator of a drive motorassembly having embedded therein motor error parameter data inaccordance with another aspect of the present invention.

FIG. 5 is a circuit schematic of embedded circuitry of a drive motorincluding a memory storing the motor error parameter data thereof.

FIG. 6 is a block diagram illustration of an exemplary motor drivearrangement of a power driven wheelchair suitable for embodying yetanother aspect of the present invention.

FIG. 7 is a block diagram schematic of an exemplary closed loop motorcontroller for controlling a drive motor of a wheelchair suitable forembodying still another aspect of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

In accordance with the present invention, once a drive motor 100 hasbeen assembled, it may be coupled to a test fixture 102 as shown in FIG.3 so that the rotor thereof is free to rotate with respect to the statorwhen driven. The test fixture 102 may include a motor controller 104which may be similar in design as the motor controller described inconnection with FIG. 2. The motor controller 104 may include memory 106for storing the operational programs of the control and calibrationalgorithms as described in the embodiment of FIG. 2 for controlling themotor under test 100. Tests may be performed on the assembled motor 100through an interactive user interface 108 coupled to the test fixture102. The user interface may be a personal computer (PC) with aconventional keyboard and display, or a manual control panel withpushbuttons and indicators, for example. In any event, once the motor100 is attached to the test fixture 102 and free to rotate, an operatormay control the test fixture 102 via the user interface 108 to initiatea calibration procedure similar to the calibration procedure describedfor the embodiment of FIG. 2.

During the calibration procedure, a calibration algorithm will beexecuted in the motor controller 104 to drive the motor 100 through anumber of predetermined drive or speed patterns using drive signals overlines 110. Concurrently, the motor controller 104 will read the angularposition signals over lines 112 from the Hall Effect sensors 50 and 52built into the motor assembly as described in FIG. 2. As part of thecalibration algorithm, the motor controller 104 will determine certainmotor error parameters which are unique to the motor under test 100 andstore data representative thereof in memory 106, for example. The motorerror parameters, may include, but not be limited to, angular error inthe orientation between the sensors 50 and 52 (should be precisely 90°),the amplitude variation of each sensor to the magnetic field, and thedistortion parameter for each sensor which is related to the deviationof the sensor signal from a sine wave, for example.

Once all of the motor error parameters are determined, the operator mayinsert a non-volatile memory 113, like a EEPROM, for example, into apluggable unit 114 which may be coupled to the motor controller 104 overaddress (A), data (D) and control (C) lines. The EEPROM 113 may be ofthe type manufactured by Microchip under the part no. 24AA01, forexample, which is an integrated circuit (IC) disposed within an 8 pinpackage. The pluggable unit 114 may be a pin pluggable receptor of the8-pin IC package. Once the memory 113 is inserted into the receptor unit114, the operator may through the interface 108 instruct the testfixture 102 to burn-in or program the non-volatile memory 113 via motorcontroller 104 with data representative of the motor error parametersdetermined for the motor under test 100. After programming, thenon-volatile memory package 113 may be removed from the receptor unit114. The programmed memory package 113 now contains data of the motorerror parameters unique to the motor 100 and is ready for embedding intothe motor assembly 100.

In the present embodiment, the wheelchair drive motor assembly includesa stator unit and a rotor unit which is driven to rotate about thestator unit. The stator unit includes the field coils of the motor alongwith the combination of Hall Effect sensors 50 and 52 and the rotor unitincludes a multiplicity of permanent magnets distributed uniformly aboutthe inside perimeter thereof and fits over the stator unit for rotationthereabout. An exemplary stator unit 120 is shown in the illustration ofFIG. 4. Referring to FIG. 4, field coils 122 of the motor are disposedaround an inside perimeter and contained within a stator housing 124which includes a center aperture 126 for coupling to an axle 128 of thewheelchair. A hub 130 of the axle 128 protrude above the stator unit 120and includes screw holes 132 for use in securing the rotor unit (notshown) thereto. Around the perimeter of the axle 128 below the hub 130is disposed a ring magnet 134 magnetized with a plurality of poles in apattern to create a magnetic field of a sinusoidal intensity, forexample, during rotation thereof.

In the embodiment of FIG. 4, the Hall Effect sensors 50 and 52 aredisposed on a printed circuit board 140 which is affixed to the statorunit in proximity to the ring magnet 134. The sensors are assembled onboard 140 in an orthogonal orientation with respect to each other asnoted herein above. The programmed EEPROM 113 containing the datarepresentative of the motor error parameters of the motor may be alsodisposed on the board 140 and become a permanent part of the motorassembly. Leads connected to the sensors 50 and 52 and the EEPROM 113are distributed through a wire cable 142 within the housing 124 to aconnector 144 affixed to the outside of housing 124. Each lead of thecable is connected to a pin of the connector 144 as will become betterunderstood from the following description.

Exemplary circuitry disposed on the board 140 is depicted in the circuitschematic diagram of FIG. 5. Referring to FIG. 5, a voltage supply Vccwhich may be on the order of five volts, for example, is brought to thecircuit board 140 through pin P3 of connector 144 for powering the HallEffect sensors 50 and 52, programmed non-volatile memory 113 and othercircuit components. A ground return GND from the circuit components iscoupled from the circuit board 140 to pin P5 of connector 144. A clocksignal CLK for accessing data serially from the memory 113 is brought tothe board 140 through pin P1 and coupled to the SCL input of memory chip113 through series connected resistors R1 and R2 which may beapproximately 220 ohms each, for example. At the board input, CLK iscoupled to Vcc through a resistor R3 which may be approximately 10Kohms. The node connection between R1 and R2 is connected through a diodeD1 (anode to cathode) to Vcc and also connected to GND through aparallel combination of a diode D2 (cathode to anode) and a capacitorC1. In the vicinity of the aforementioned circuitry, Vcc is bypassed toGND through a capacitor C2.

Serial data DAT is accessed from the SDA output of chip 113 which isconnected to pin P2 through series connected resistors R4 and R5 whichmay be approximately 220 ohms each, for example. At the board input, DATis coupled to Vcc through a resistor R6 which may be approximately 10Kohms. The node connection between R4 and R5 is connected through a diodeD3 (anode to cathode) to Vcc and also connected to GND through aparallel combination of a diode D4 (cathode to anode) and a capacitorC3. Address inputs A0, A1 and A2 and input WP of chip 113 are coupled toGND. Also, in the vicinity of the memory chip 113, Vcc is bypassed toGND through a capacitor C4.

Still further, the output of Hall Effect sensor 50 which may be of thetype manufactured by Allegro under the part no. A3515LUA, for example,is connected to pin P4 through series connected resistors R7 and R8which may be approximately 22 ohms each, for example. The nodeconnection between R7 and R8 is connected through a diode D5 (anode tocathode) to Vcc and also connected to GND through a parallel combinationof a diode D6 (cathode to anode) and a capacitor C5. In the vicinity ofthe aforementioned circuitry, Vcc is bypassed to GND through a capacitorC6. Likewise, the output of Hall Effect sensor 52 which may be of thesame type as sensor 50, for example, is connected to pin P6 throughseries connected resistors R9 and R10 which may be approximately 22 ohmseach, for example. The node connection between R9 and R10 is connectedthrough a diode D7 (anode to cathode) to Vcc and also connected to GNDthrough a parallel combination of a diode D8 (cathode to anode) and acapacitor C7.

In accordance with the present invention, wheelchair drive motors may bebuilt and distributed with the motor error parameter dataa embeddedtherein, like in the programmed chip 113, for example. Thus, the drivemotors 12 and 14 may be assembled to the wheelchair in any conventionalmanner and the signal lines of the sensors 50 and 52, and the memorychip 113 may be connected to the motor controller 10 through connectors150 for right side drive motor and 152 for left side drive motor asshown in FIG. 6. The sensors 50 and 52 may be read in from the right andleft side motors over signal lines 28 and 30, respectively, as describedin the embodiment of FIG. 1 and the motor error parameter data may beaccessed or read from the memories of the right and left side motorsover signal lines 154 and 156, respectively, for use by the motorcontroller 10 in controlling the motors 12 and 14.

More specifically, programmed in the microcontroller 40 of the motorcontroller 10 is a power-up routine 160 as shown in the functional blockdiagram schematic of FIG. 7. Accordingly, when the microcontroller 40 ispowered up, it sequences through the programmed power-up routine 160which includes a task of accessing or reading the motor error parameterdata embedded in each drive motor connected thereto via connector 150and lines 154 for motor 12 and connector 152 and lines 156 for motor 14such as shown in the embodiment of FIG. 6. The power-up routine 160 mayinitiate the data transfer by first transmitting the clock signal CLK toone of the drive motors, like motor 12, for example, and receivingserially the error parameter data for motor 12 over the data line DAT ina predetermined data pattern. Once the routine 160 receives all of theerror parameter data for motor 12, it may store the data in designatedregisters of a memory 162. Then, the routine 160 may access, read in andstore the error parameter data of the other motor 14, for example, inthe same manner.

After power-up, the microcontroller 40 may be tasked with the motorcontrol function using the motor control algorithm 62 as describedherein above in connection with the embodiment of FIG. 2. During theexecution of the motor control algorithm 62, error parameter data may beaccessed from memory 162 by the control algorithm 62 to compensate forthe motor errors in order to provide a smooth drive of the wheels of thewheelchair. Should power be disconnected from the microcontroller 40,then the power-up routine will be re-executed upon power turn on and theforegoing described steps will be repeated.

Also, should one or both of the motor assemblies of the wheelchair bereplaced for any reason in the field, the replacement will betransparent to the microcontroller 40 since upon power-up, themicrocontroller 40 is programmed to access and read in the errorparameter data associated with the new motor(s) from the embeddedprogrammed memory chip thereof. There is no longer any need to gothrough the cumbersome and time consuming calibration procedure eachtime a motor assembly is originally assembled to the wheelchair orreplaced in the field. The calibration takes place at the motor assemblylevel and may be maintained throughout the lifetime of the motor.

While the present invention has been described herein above inconnection with one or more embodiments, it is understood that suchembodiments are being used herein by way of example with no intention oflimiting the invention in any way thereby. Rather, the present inventionshould be construed in breadth and broad scope in accordance with therecitation of the appended claims.

1. A drive motor assembly for a power driven wheelchair comprising: astator housing for containing field coils of a stator of said motorassembly; at least one sensor disposed in said stator housing forsensing rotation of said motor; a memory storing motor error parameterdata including data of errors of said at least one sensor, said memorybeing embedded in said stator housing; and means for accessing saiderror parameter data of said memory from said stator housing.
 2. Themotor assembly of claim 1 wherein the stator housing includes anaperture for accommodating a wheel axle of the wheelchair; and includinga ring magnet disposed about a periphery of said wheel axle at thestator housing, said ring magnet magnetized with a plurality of magneticpoles.
 3. The motor assembly of claim 2 wherein the at least one sensorcomprises two sensors assembled in a predetermined angular orientationwith respect to each other and the ring magnet for generating signalsfrom which an angular position of motor rotation is derived.
 4. Themotor assembly of claim 3 wherein the sensor signals are predeterminedperiodic waveforms separated in phase by 90° substantially.
 5. The motorassembly of claim 3 wherein the motor error parameter data stored insaid memory comprises data of at least one of the group consisting ofangular error in the predetermined angular orientation between the twosensors, amplitude variation of each sensor to a magnetic field of thering magnet, and a distortion parameter of each sensor that is relatedto a deviation of the corresponding sensor signal from the predeterminedwaveform thereof.
 6. The motor assembly of claim 1 wherein the memory isa non-volatile memory.
 7. The motor assembly of claim 1 including acircuit board for supporting the memory in the stator housing; aconnector disposed at an outside wall of the stator housing; and signallines for interconnecting the memory to the connector.
 8. The motorassembly of claim 7 wherein the signal lines comprise a two wire serialcommunication with the memory.
 9. The motor assembly of claim 7 whereinthe signal lines include a clock line and a serial data line.
 10. Themotor assembly of claim 7 wherein the circuit board also supports the atleast one sensor.
 11. Apparatus for accessing motor error parameter datafrom a drive motor of a wheelchair, said apparatus comprising: a memoryembedded in said drive motor, said memory storing motor error parameterdata; and a programmed motor controller for controlling said drivemotor, said motor controller operative to access the motor errorparameter data from said embedded memory for use in controlling saiddrive motor.
 12. The apparatus of claim 11 wherein the motor controlleris programmed with a power-on program that is executable upon poweringthe motor controller to access the motor error parameter data from saidembedded memory.
 13. The apparatus of claim 12 wherein the motorcontroller includes a memory for storing the motor error parameter dataaccessed from the embedded memory of the drive motor.
 14. The apparatusof claim 11 wherein the embedded memory comprises a non-volatile memory.15. The apparatus of claim 11 wherein the motor controller is coupled tothe embedded memory over a serial communications connection.
 16. Theapparatus of claim 15 wherein the serial communication connectioncomprises a clock signal and a serial data signal.
 17. Method ofembedding motor error parameter data in a drive motor of a wheelchair,said method comprising the steps of: controlling said motor through atleast one predetermined drive pattern; sensing motor rotation duringsaid drive pattern and generating signals representative thereof;deriving error parameter data of said drive motor from said generatedsignals; programming a memory with said derived error parameter data;and embedding said memory in said drive motor.
 18. The method of claim17 including the step of providing access to the embedded memory in thedrive motor through a communication connection.
 19. The method of claim18 wherein the access to the embedded memory is provided through a twowire serial communication connection.
 20. The method of claim 17 whereinthe step of programming includes programming a non-volatile memory withthe derived error parameter data.
 21. The method of claim 17 includingthe step of attaching the drive motor to a test fixture.
 22. The methodof claim 17 wherein the step of controlling includes controlling themotor through a plurality of predetermined drive patterns.
 23. Themethod of claim 17 wherein the step of sensing includes sensing theangular position of the motor during the drive pattern and generatingsignals representative of said motor angular positions.